<?xml version="1.0"?>
<!--
  ~ Copyright 2004-2012 ICEsoft Technologies Canada Corp.
  ~
  ~ Licensed under the Apache License, Version 2.0 (the "License");
  ~ you may not use this file except in compliance with the
  ~ License. You may obtain a copy of the License at
  ~
  ~ http://www.apache.org/licenses/LICENSE-2.0
  ~
  ~ Unless required by applicable law or agreed to in writing,
  ~ software distributed under the License is distributed on an "AS
  ~ IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
  ~ express or implied. See the License for the specific language
  ~ governing permissions and limitations under the License.
  -->

<ui:composition xmlns="http://www.w3.org/1999/xhtml"
                xmlns:h="http://java.sun.com/jsf/html"
                xmlns:f="http://java.sun.com/jsf/core"
                xmlns:c="http://java.sun.com/jsp/jstl/core"
                xmlns:ace="http://www.icefaces.org/icefaces/components"
                xmlns:ice="http://www.icesoft.com/icefaces/component"
                xmlns:icecore="http://www.icefaces.org/icefaces/core"
                xmlns:ui="http://java.sun.com/jsf/facelets"
                template="/resources/templates/content-template.xhtml">

    <ui:param name="title" value="#{msgs[dataTableConfigPanel.title]}"/>
    <ui:param name="description" value="#{msgs[dataTableConfigPanel.description]}"/>
    <ui:param name="resourceValue" value="#{dataTableConfigPanel.exampleResource}"/>
    
    <ui:param name="wikiResources" value="#{dataTableResources.wikiResources}"/>
    <ui:param name="tldResources" value="#{dataTableResources.tldResources}"/>

    <ui:define name="example">
        <h:form id="carForm">
            <ace:tableConfigPanel id="tableConfig"
                                  for="carTable"
                                  columnNameConfigurable="true"
                                  columnVisibilityConfigurable="true"
                                  columnOrderingConfigurable="true"
                                  columnSortingConfigurable="true"
                                  type="last-col"/>
            
            <ace:dataTable id="carTable"
                           value="#{dataTableConfigPanel.carsData}"
                           var="car"
                           rows="10">
                
                        <ace:column id="id" headerText="ID">
                            #{car.id}
                        </ace:column>
                        <ace:column id="name" headerText="Name" sortBy="#{car.name}">
                            #{car.name}
                        </ace:column>
                        <ace:column id="chassis" headerText="Chassis" sortBy="#{car.chassis}">
                            #{car.chassis}
                        </ace:column>
                        <ace:column id="weight" headerText="Weight" sortBy="#{car.weight}">
                            #{car.weight}lbs.
                        </ace:column>
                        <ace:column id="accel" headerText="Accel" sortBy="#{car.acceleration}">
                            #{car.acceleration}
                        </ace:column>
                        <ace:column id="mpg" headerText="MPG" sortBy="#{car.mpg}">
                            #{car.mpg}
                        </ace:column>
                        <ace:column id="cost" headerText="Cost" sortBy="#{car.cost}">
                            <h:outputText id="costCell" value="#{car.cost}">
                                <f:convertNumber type="currency"
                                                 currencySymbol="$"
                                                 groupingUsed="true"
                                                 minFractionDigits="2"
                                                 maxFractionDigits="2"/>
                            </h:outputText>
                        </ace:column>
            </ace:dataTable>
            
        </h:form>
    </ui:define>
</ui:composition>
